package com.dingwen.treasure.base.enums;

import com.baomidou.mybatisplus.annotation.EnumValue;
import com.fasterxml.jackson.annotation.JsonValue;
import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 性别枚举
 *
 * <ul>
 *     <li>1： 男</li>
 *     <li>0： 女</li>
 * </ul>
 * <p>实体对象直接 toString() 枚举属性显示的是构造器名称（MALE，FEMALE）需要自行实现 toString() 方法</p>
 *
 * @author dingwen
 * @date 2022/05/01
 */
@Getter
@AllArgsConstructor
public enum GenderEnum implements BaseEnum<Integer>{

    /**
     * 男性
     */
    MALE(1, "男"),
    /**
     * 女性
     */
    FEMALE(0, "女");


    /**
     * code
     */
    @EnumValue
    private final Integer code;

    /**
     * 描述
     */
    @JsonValue
    private final String description;



    /**
     * 获取枚举类描述
     *
     * @return {@link String}
     */
    @Override
    public String getEnumDescription() {
        return "性别";
    }
}
